﻿@{
    ViewBag.Title = "Nservice Bus-Queue And Messages";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
        <ol class="breadcrumb" style="margin-top: 10px;">
    <li><a href="/Home/Home">Home</a></li>
    <li><a href="/NServiceBus/Introduction/">Nservice Bus</a></li>
    <li class="active">Queue And Messages</li>
</ol>

            
            <div id="introduction">
                <h1 class="text-left">Introduction Of Queus and Messages</h1>
            </div>

            <div id="Queues">
                <h3>Queues</h3>
                <p>
                    First in First Out(FIFO) Datastructure for Stroring and retrieving Messages.<br /><img src="E:/M.Sc(I.T.) Project Training/Data/Images/Queues.png" class="img-thumbnail" height=100% width=100% />
                    Default Queue in Nservicebus is Microsoft Message Queue(MSMQ) available in all windows editions.
                    <br />Also support for
                    <ol start="1">
                        <li><strong>ActiveMQ :�</strong> ActiveMQ is an open source message broker written in Java together with a full Java Message Service (JMS) client. It provides "Enterprise Features" which in this case means fostering the communication from more than one client or server.</li>
                        <li><strong>RabbitMQ :-</strong>:- RabbitMQ is open source message broker software that implements the Advanced Message Queuing Protocol. The RabbitMQ server is written in the Erlang programming language and is built on the Open Telecom Platform framework for clustering and failover. </li>
                        <li><strong>SQL Server :-</strong>SQL Server Service Broker provides native support for messaging and queuing applications in the SQL Server Database Engine. This makes it easier for developers to create sophisticated applications that use the Database Engine components to communicate between disparate databases. Developers can use Service Broker to easily build distributed and reliable applications.</li>
                        <li>
                            <strong>Windows Azure Queues:-</strong>
                            which are part of the Windows Azure storage infrastructure, feature a simple REST-based Get/Put/Peek interface, providing reliable, persistent messaging within and between services.
                        <li>
                            <strong>Windows Azure ServiceBus :- </strong>
                            Service Bus Queues are part of a broader Windows Azure messaging infrastructure that supports queuing as well as publish/subscribe, Web service remoting, and integration patterns.
                        </li>
                    </ol>
                    <strong>One endpoint has one queue, Send-Only endspoints do not have queues.</strong>
                </p>
            </div>
            <div id="Messages">
                <h3><strong>Messages In NserviceBus</strong></h3>
                <ul >
                    <li>
                        <strong>Messages Implements IMessage</strong><br /><ul >
                            Imessage Purpose For Request Response Messagning.
                        </ul>
                    </li>
                    <li>
                        <strong>Messages Implements ICommand</strong><br />
                        <ul >
                            Is Not allowed to be published since all Command have logical Owner Should have one logical Owner and Should be send to endpoint responsible for Processing.
                            <br />Cannot be Subscribed and UnSubscribed.
                            <br />Cannot Implement Ievent.
                        </ul>
                    </li>
                    <li>
                        <strong>Messages Implements IEvent</strong><br />
                        <ul >
                            Can be Published
                            <br />Can be Subscribed and UnSubscribed
                            <br />Cannot be send Using Bus.Send() Since all events Should Be Published.
                            <br /> Cannot Implement ICommand
                        </ul>
                    </li>
                </ul>


            </div>
    
 


